package com.tfjybj.itoo.exam.provider.dao;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.tfjybj.itoo.exam.entity.ClassEntity;
import com.tfjybj.itoo.exam.model.ClassModel;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;

/**
 * ClassDao接口
 * class表
 *
 * @author 杨江涛
 * @version 2.0.0
 * @since 2.0.0 2018-11-15 10:35:56
 */
@Repository("classDao")
public interface ClassDao extends BaseMapper<ClassEntity> {
	
	//region 模板生成：模糊查询
	/**
     * 根据行政班名称模糊查询class
     *
     * @param name  行政班名称
     * @return 模糊查询的class集合
     * @author 杨江涛
     * @since 2.0.0 2018-11-15 10:35:56
     */
    List<ClassEntity> queryLikeName(@Param("name") String name);

    //endregion

    /* **********************************以下为非模板生成的内容********************************* */

    /**
     * 根据professionId查找所有行政班信息
     *
     * @param professionId 专业id
     * @return  classEntityList
     * @author 杨江涛
     * @since 2.0.0 2018-11-15 10:35:56
     */
    List<ClassEntity> findByProfessionId(String professionId);

    /**
     * 查询在校班级
     * @param majorId 专业id
     * @param minSession 在校生最小届入学年份
     * @param maxSession  在校生最大届入学年份
     * @param screenClassName 搜索框中的值
     * @return
     */
    List<ClassModel> querySchoolClass(@Param("majorId") String majorId, @Param("minSession") Object minSession, @Param("maxSession") Object maxSession, @Param("screenClassName") String screenClassName);

}
